package cn.tedu._04mybatis.mapper;

import cn.tedu._04mybatis.pojo.entity.Comment;
import cn.tedu._04mybatis.pojo.vo.CommentVO1;
import cn.tedu._04mybatis.pojo.vo.CommentVO2;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface CommentMapper {
    /** 1. 插入: `insertComment` , 在评论表中插入1条数据;*/
    //@Insert("INSERT INTO blog.comment(content,created,user_id,weibo_id) VALUES (#{content},#{created},#{userId},#{weiboId})")
    int insertComment(Comment comment);

    /** 2. 删除: `deleteById` , 根据id删除1条评论;*/
    //@Delete("DELETE FROM blog.comment WHERE id=#{id}")
    int deleteById(int id);

    /** 3. 修改: `updateById` , 根据id修改评论信息;*/
    //@Update("UPDATE blog.comment SET content=#{content},created=#{created},user_id=#{userId},weibo_id=#{weiboId} WHERE id=#{id}")
    int updateById(Comment comment);

    /** 4. 查询:  `selectCommentById1`，根据评论的id查询评论的 内容、用户ID、微博ID（数据库表中确认）*/
    //@Select("SELECT content,user_id userId, weibo_id weiboId FROM blog.comment WHERE id=#{id}")
    CommentVO1 selectCommentById1(int id);

    /** 5. 查询 `selectCommentById2`，根据微博的id查询评论的 内容、用户ID（数据库表中确认）*/
    //@Select("SELECT content,user_id userId FROM blog.comment WHERE weibo_id=#{wid}")
    List<CommentVO2> selectCommentById2(int id);


    /*
    6.动态删除方式1:以数组方式

     */
    int deleteByIds1(Integer[] ids);

    int deleteByIds2(List<Integer> ids);

    int dynameicUpdate(Comment comment);

    int selectCount();



















}
